package Lambda.Supplier;

import java.util.function.Supplier;

//Supplier函数式接口:是生成一个数据
public class Supplierdemo {

           /* jdk源码：
           public interface Supplier<T> {//Supplier<T>参数是泛型，返回值也是泛型
                T get();*/
    private static String getString(Supplier<String> sup){
        return sup.get();
    }

    public static void main(String[] args) {
        //匿名内部类
          /*  String s=getString(new Supplier<String>() {
                @Override
                public String get() {
                    return "胡歌";
                }
            });*/
        //lambda表达式
      /*  String s=getString(()-> {
                return "胡歌";
            }
        );*/
        //优化后的lambda表达式
        String s=getString(()->"胡歌");
        System.out.println(s);
    }
}
